基于安卓平台的生活助手开发与研究

摘要:

该项目旨在提醒人们自己家中的药品食品即将过期还附加语音提醒每日吃药的功能。我开发的“Life Assistant”(生活助手)它可以通过扫描条码从网站上获取药品信息,然后输入过期时间存进微数据库中,可以查看即将过期的药品,并单条删除,也可以查看全部药品点清自己的物品明细。目前针对于药品与食品的管理,但以后对于任何物品都可以实现。

其中的创新点有:

1.无论药品多少都可以一键查看即将过期或已过期药品并及时处理。

2.可以通过扫描条码的方式查看药品明细,并且有语音系统生动读出。

3.在任何场合都可以随时了解自己家中有哪些治疗药物。

4.有闹钟功能,由语音系统念读,提醒每日服药。

5.操作方便,仅需一部手机即可实现目录

第一章 序言 3

§1.1选题由来 3

§1.2 开发流程 3

§1.3 开发环境 3

§1.4 功能介绍 3

第二章 核心代码 5

§2.1 扫描获取信息 5

§2.2 语音输入、输出 6

§2.3微数据库 6

§2.4 插件内容 8

§2.5 提醒物品过期 9

§2.6 细节内容 9

第三章 用户反馈 10

参考文献 10

第一章 序言

§1.1选题由来

如今,人们家中的药品箱,食品柜中总是塞得很满,我家的药品总会在关键时候拿出来时发现过期了,只能扔掉,非常可惜,于是我创作了这款APP。虽然已有类似的软件,对药品拥有很好的管理能力,但我做的这个APP它不仅能记录所储存的物品并及时提醒过期,由于一些老人不擅长使用手机,有的人还不会打字,所以它还拥有语音系统,可以输入和输出。还有其他的生活助手小插件,改善人们的生活。开发的期初源于我自身的生活,一开始希望做到使用web客户端进行天气预报,但国内方便使用的API接口已经关闭更新,并且大多数手机已经可以做到拉下屏幕查看天气,所以我改变了原有的思路。后来进行药品管理的制作,找到了一个非常好的网站,提供了条码扫描器的API接口,我遵循着网站上的指导,自己钻研,成功运用了web客户端解码json文本,成功获取了药品信息,当我第一次成功时,内心无比激动。随后是最关键的部分,为了管理物品,需要用到微数据库,在编程的过程中,技术性问题非常多,我查询了以下文献进行学习,再经过自己的不断调试,最终取得成功。

【1】《人人都能开发安卓APP——App Inventor 2运用实战》

【2】《可视化开发Android应用程序——拼图开发模式App Inventor2》

王向辉 张国印 沈洁编著 清华大学出版社

【3】《App Inventor 2中文版开发实战:Android智能应用开发前传》

主编 王寅峰 电子工业出版社

§1.2 开发流程

1.调查人们的生活状况

2.查阅相关书籍解决技术问题

3.编写程序

§1.3 开发环境

开发网站:app.gzjkw.net

开发软件:App Inventor 2

§1.4 功能介绍

和可通过扫描条码记录药品食品存入手机中

当记录的物品过期时会及时语音提醒

可设置闹钟语音提醒吃药

情绪宣泄器:当发火时抽取一种让自己心情好点的方法

5.健康计步器:计算步行距离消耗的能量

第二章 核心代码

§2.1 扫描获取信息

通过扫描条码获取网上的物品信息,需要调用网站的API,并解码json文本获取关键字。

接入API端口

我所使用的API接口网址为http://www.tngou.net/api/drug/code?code=扫码内容,解码的json文本为

{ "count":0,

"description":“ ",

"fcount":0,

"id":1,

"img":"/drug/081018/08d6a02d4c5a04c704fcf4ed1352b115.jpg",

"keywords":" ",

"message":"  ",

"name":“xxxx",

"code":"", "factory":"", "price":15, "rcount":0,

"tag":"", "type":""}

图1

扫码成功后,在键值中查找关键字。

§2.2 语音输入、输出

运用语音识别器和文本语言转换器,完成语音系统

图2

§2.3微数据库

本段将详细分析微数据库的运用

§2.3.1 存储

图3

存储的内容分为条码/编码,名字,年,月,日

点击按钮后,微数据库中将记录所输入的数据

§2.3.2 查看

记录数据后,一个screen为查看所有数据,另一个screen计算出已过期或即将过期的数据并显示

图4

计算过期物品则用if语句计算

图5

§2.3.3 删除数据

当药品过期或输入错误时,则需要删除数据

图6

分别为删除选中数据和删除所有数据

§2.4 插件内容

作为生活助手,需要各种小功能不断完善

§2.4.1 情绪宣泄器

若想随机抽取一种图片和语言,直接抽取比较困难,于是我创建了一个变量,这个变量为1,2,3,4,从中抽取一个数字,随后再转换成图片和语言,则方便很多

§2.4.2 健康计步器

这个界面运用滑动条方便输入体重的步长,加速度传感器感应走的路,热量消耗计算公式为:体重*步行距离*1.036=热量消耗,当加速度传感器感应到走路,则步数每次+1,步行距离和热量消耗也会随之改变 §2.4.3 闹钟提醒吃药

该功能较简单,只需设置时间选择框,然后在label中记录,调用计时器计算时间,当时间到时语音念读消息,但开发时遇到一个小困难,当时间到时它在这一分钟内会不停地提醒,于是我设计在设定分钟的第1秒进行提醒。

图7

图8

§2.5 提醒物品过期

为了不让药品过期很久才发现,我又加了一个功能:当屏幕打开时就调用微数据库数据计算是否有物品过期,当有物品过期时会有对话框出现语音提醒过期的物品是什么,让人们及时处理

图9

§2.6 细节内容

为了人们更好的使用这款APP,细节是必要的

在输入数据后,输入的内容会自动删除,一是方便人们不必手动删除,二是表示已经存入了数据

在获取药品信息,情绪宣泄器等功能中,我融入了加速度传感器,就拥有了摇一摇语音念读的功能,使获得信息更方便生动

第三章 用户反馈

经过长时间的开发和修改,我已完善至40多个版本,并且还可以不断改进。我给同学家人使用了这款APP,长辈表示这下过期的东西可以及时处理掉特别方便,同学表示这款APP中的功能新颖有趣,还会“说话”。以后的生活中发现各种小问题时他们都会提出,我则再通过编写新的功能继续完善这款软件。

参考文献

【1】《人人都能开发安卓APP——App Inventor 2运用实战》

【2】《可视化开发Android应用程序——拼图开发模式App Inventor2》

王向辉 张国印 沈洁编著 清华大学出版社

【3】《App Inventor 2中文版开发实战:Android智能应用开发前传》

主编 王寅峰 电子工业出版社

图10

图10